feat(ffi): Add IndexedDB and in-memory session stores support#5811
feat(ffi): Add IndexedDB and in-memory session stores support#5811Hywan merged 4 commits intomatrix-org:mainfrom
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #5811 +/- ##
=======================================
Coverage 88.50% 88.50%
=======================================
Files 360 360
Lines 100723 100723
Branches 100723 100723
=======================================
+ Hits 89141 89142 +1
Misses 7398 7398
+ Partials 4184 4183 -1 ☔ View full report in Codecov by Sentry. |
CodSpeed Performance ReportMerging #5811 will not alter performanceComparing Summary
|
poljar
left a comment
There was a problem hiding this comment.
Looks good. I would perhaps remove the session_ prefix from the various functions and just call it ClientBuilder::sqlite_store() or something along those lines.
I don't think the deprecated warning passes over the FFI, but don't mind it either.
This patch introduces the `sqlite` and `indexeddb` feature flag, enabling the use of SQLite or IndexedDB for the stores. This patch also introduces the ability to use non-persistent, in-memory stores. The new `ClientBuilder::in_memory_store`, `ClientBuilder::sqlite_store` and `ClientBuilder::indexeddb_store` methods are introduced to configure the stores. This patch adds new `SqliteStoreBuilder` and `IndexedDbStoreBuilder` structure.
These two methods are used only once, it's fine to get a large error here.
This method restores and marks `ClientBuilder::session_paths` as deprecated.
|
Thanks for the renaming suggestion. Here are the new names:
|
Looking good. |
This is a reboot of #5245.
This patch introduces the
sqliteandindexeddbfeature flag, enabling the use of SQLite or IndexedDB for the session store. This patch also introduces the ability to use non-persistent, in-memory session store.The new
ClientBuilder::session_store_in_memory,ClientBuilder::session_store_with_sqliteandClientBuilder::session_store_with_indexeddbmethods are introduced to configure the session store. This patch adds newSqliteSessionStoreBuilderandIndexedDbSessionStoreBuilderstructure.